package com.library.dao;

import com.library.entity.Reader;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ReaderDao {
    /**
     * 添加读者
     */
    int insert(Reader reader);

    /**
     * 根据ID查询读者
     */
    Reader findById(Integer id);

    /**
     * 根据用户名查询读者
     */
    Reader findByUsername(String username);

    /**
     * 根据邮箱查询读者
     */
    Reader findByEmail(String email);

    /**
     * 查询所有读者
     */
    List<Reader> findAll();

    /**
     * 更新读者信息
     */
    int update(Reader reader);

    /**
     * 删除读者
     */
    int delete(Integer id);

    /**
     * 修改密码
     */
    int updatePassword(@Param("id") Integer id, @Param("password") String password);

    /**
     * 统计读者总数
     */
    int count();
}